Skip to content

Conversation

harlanhaskins
Copy link
Member

What's in this pull request?

This test enables parallel execution of tests, to significantly speed up total testing time for long-running tests.

Why merge this pull request?

For the Trill test suite, it cuts the time it takes to run the test suite by a huge margin. I figured parallelism was the next step for this, as it becomes very important as a large number of tests are added.

What's worth discussing about this pull request?

The general algorithm for splitting execution of tests among workers, the switch to ShellOut instead of SwiftShell

What downsides are there to merging this pull request?

Test results are no longer in sorted order when parallelism is enabled.

@harlanhaskins harlanhaskins changed the title Add paral Add parallel text execution Dec 9, 2017
@harlanhaskins harlanhaskins requested a review from CodaFi December 9, 2017 06:02
@harlanhaskins
Copy link
Member Author

harlanhaskins commented Dec 9, 2017

This passes TSan and UBSan locally, by the way. I found a bug in ShellOut through TSan and fixed it on a fork, so we're using that as the dependency until my PR gets accepted.

Tests pass locally -- wish I could figure out why it's not working on Linux 😞 It was the .swift-version file!

@harlanhaskins harlanhaskins merged commit c652783 into master Dec 10, 2017
@harlanhaskins harlanhaskins deleted the parallelism-yeah-yeah branch December 10, 2017 18:21
@harlanhaskins harlanhaskins restored the parallelism-yeah-yeah branch December 10, 2017 18:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant